﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

using System.Device.Location;  // GeoCoordinate
using Windows.Devices.Geolocation;  // Geocoordinate

namespace BingMapSample
{
    /* 
     * Khi muốn lấy vị trí hiện tại của thiết bị, ta sử dụng 
     *      Geoposition geoposition = await geolocator.GetGeopositionAsync();
            Geocoordinate geocoordinate = geoposition.Coordinate; 
     * sẽ thu được một đối tượng Geocoordinate nằm trong Windows.Devices.Geolocation
     * Nhưng để hiển thị lên Map, ta cần GeoCoordinate của System.Device.Location
     * 
     * Vì vậy cần lớp CoordinateConverter này để chuyển đổi.
     */
    public static class CoordinateConverter
    {
        public static GeoCoordinate ConvertGeocoodinate(Geocoordinate geocoordinate)
        {
            return new GeoCoordinate
            (
            geocoordinate.Latitude,
            geocoordinate.Longitude,
            geocoordinate.Altitude ?? Double.NaN,
            geocoordinate.Accuracy,
            geocoordinate.AltitudeAccuracy ?? Double.NaN,
            geocoordinate.Speed ?? Double.NaN,
            geocoordinate.Heading ?? Double.NaN
            );
        }

    }
}
